
using System.Diagnostics;
using System;
//using System.Xml.Linq;
using System.Windows.Forms;
using System.Collections;
using System.Drawing;
using Microsoft.CSharp;
using System.Data;
using System.Collections.Generic;
//using System.Linq;
using System.IO;
using System.Xml;
//using clsControlColores;
using Utiles;
using Infragistics.Win;
//using Utiles.UtilControlesNET;
//using clsVariables;
//using clsVariables.Colores;

	#region  Imports
	#endregion
	//'
	public partial class frmCambiarColores
      
	{
		public frmCambiarColores()
		{
			InitializeComponent();
		}
		private bool bolCargadoForm;
		private bool bolPrevisualizar;
		DataTable dTTiposGradientStyle = new DataTable();
		DataTable dTTiposGroupByBoxBorderStyle = new DataTable();
		bool bolCambioAutomatico = true;
		internal System.Windows.Forms.Form FormFlotante;
		//'
		#region                                                                Aplicar Estilo Directo?
		private bool m_bolAplicarEstiloDirecto = false;
		
		public bool bolAplicarEstiloDirecto
		{
			get
			{
				return m_bolAplicarEstiloDirecto;
			}
			set
			{
				m_bolAplicarEstiloDirecto = value;
			}
		}
		
		#endregion
		//'
		private void CargarVariablesPrivadas()
		{
			//Cambio automático
			if (((Infragistics.Win.UltraWinToolbars.StateButtonTool) (utmCabecera.Tools["CambioAutomatico"])).Checked)
			{
				bolCambioAutomatico = true;
			}
			else
			{
				bolCambioAutomatico = false;
			}
			
			//Previsualizar
			if (((Infragistics.Win.UltraWinToolbars.StateButtonTool) (utmCabecera.Tools["Previsualizar"])).Checked)
			{
				bolPrevisualizar = true;
			}
			else
			{
				bolPrevisualizar = false;
			}
		}
		//'
		public void frmCambiarColores_Load(object sender, System.EventArgs e)
		{
			clsControlColores.CambiarColoresTab(utcControlesAModificar);
			bolCargadoForm = false;
			Utiles.UtilInfragistics.Ctrl_UltraToolbarsManager.ScpEstandarBarra(ref utmCabecera);
			clsControlColores.CambiarColorBarra(utmCabecera);
			
			//Carga combos
			CargarCombosDeTiposGradientStyle();
			CargarCombocmbUltraGridGroupByBoxBorderStyle();
			CargarVariablesPrivadas();
			
			AsignarColoresSesionAFormulario();
			
			//Asignar imágenes
			utmCabecera.Tools["Procesar"].SharedProps.AppearancesSmall.Appearance.Image = clsImagenes.Procesar;
			utmCabecera.Tools["Guardar"].SharedProps.AppearancesSmall.Appearance.Image = clsImagenes.Guardar;
			utmCabecera.Tools["Abrir"].SharedProps.AppearancesSmall.Appearance.Image = clsImagenes.Abrir;
			
			bolCargadoForm = true;
		}
		
		#region  Tratamiento de venta flotante
		
		private void CrearFormFlotante()
		{
			FormFlotante = new Form();
			FormFlotante.FormClosing += new System.Windows.Forms.FormClosingEventHandler(AntesCerrarFormFlotante);
			//Config del Form
			FormFlotante.Size = new System.Drawing.Size(448, 255);
			FormFlotante.Name = "frmFormFlotante";
			FormFlotante.Text = "Previsualización";
			FormFlotante.Visible = false;
		}
		
		private void BorrarControlesFormFlotante()
		{
			foreach (Control ControlActual in FormFlotante.Controls)
			{
				FormFlotante.Controls.Remove(ControlActual);
			}
		}
		
		public void CrearMostrarPrevisualizacion(System.Object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
		{
			object ControlFormFlotante = null;
			bool bolControlCreado;
         Infragistics.Win.UltraWinGrid.UltraGrid ugObjeto; 
         Infragistics.Win.UltraWinTabControl.UltraTabControl tcObjeto;
			
			try
			{
				//Crear controles nuevos o borrar definitivo
				if (bolPrevisualizar)
				{
					switch (utcControlesAModificar.ActiveTab.Index)
					{
						//Case 0 'toolbar
						//   ControlFormFlotante = New Infragistics.Win.UltraWinToolbars.UltraToolbarsManager
						//   bolControlCreado = True
						
						case 1: //grid
							//Añadir control grid a Form Flotante sino lo tiene ya
							if (FormFlotante.Controls.Count > 0 && FormFlotante.Controls[0].ToString() == "Infragistics.Win.UltraWinGrid.UltraGrid")
								{
								//asignar control existente
								ControlFormFlotante = FormFlotante.Controls[0];
								bolControlCreado = true;
							}
							else
							{
								//Borro control antiguo
								BorrarControlesFormFlotante();
								
								//Crear control del form flotante
								System.Data.Odbc.OdbcConnection conn = new System.Data.Odbc.OdbcConnection();
								ControlFormFlotante = new Infragistics.Win.UltraWinGrid.UltraGrid();
								
								//Formato
								clsControlColores.CagarColoresGrid( (Infragistics.Win.UltraWinGrid.UltraGrid) ControlFormFlotante);
								//Agregamos agrupacion
								//Datos
                        ugObjeto= (Infragistics.Win.UltraWinGrid.UltraGrid) ControlFormFlotante;
						      ugObjeto.DisplayLayout.Override.HeaderAppearance.FontData.SizeInPoints = 6;
								ugObjeto.DisplayLayout.Override.RowAppearance.FontData.SizeInPoints = 6;
								//.AutoFitStyle = Infragistics.Win.UltraWinGrid.AutoFitStyle.ResizeAllColumns
								//.PerformAutoResizeColumns(False, Infragistics.Win.UltraWinGrid.PerformAutoSizeType.VisibleRows)
								ugObjeto.DisplayLayout.GroupByBox.Hidden = false;
								ugObjeto.DisplayLayout.ViewStyleBand = Infragistics.Win.UltraWinGrid.ViewStyleBand.OutlookGroupBy;
								
								bolControlCreado = true;
								//agregamos al form
								FormFlotante.Controls.Add(ugObjeto);
							}
							break;
							
							//Case 2 'tabbedMdimanager
							//   ControlFormFlotante = DirectCast(ControlFormFlotante, Infragistics.Win.UltraWinGrid.UltraGrid)
							
						case 3: //tabcontrol
							if (FormFlotante.Controls.Count > 0 && FormFlotante.Controls[0].ToString() == "Infragistics.Win.UltraWinTabControl.UltraTabControl")
								{
								//asignar control existente
								ControlFormFlotante = FormFlotante.Controls[0];
								bolControlCreado = true;
							}
							else
							{
								//Borro control antiguo
								BorrarControlesFormFlotante();
								
								//Crear control del form flotante
								ControlFormFlotante = new Infragistics.Win.UltraWinTabControl.UltraTabControl();
								//Formato
                        tcObjeto = (Infragistics.Win.UltraWinTabControl.UltraTabControl)ControlFormFlotante;
								clsControlColores.CambiarColoresTab(tcObjeto );
								tcObjeto .Tabs.Add("pagina1", "pagina 1");
								tcObjeto .Tabs.Add("pagina2", "pagina 2");
								tcObjeto .Tabs.Add("pagina3", "pagina 3");
								bolControlCreado = true;
								//agregamos al form
								FormFlotante.Controls.Add(tcObjeto );
							}
							break;
							
						default:
							bolControlCreado = false;
							QuitarTopMost(sender,e); //If Not FormFlotante Is Nothing Then FormFlotante.Visible = False
							break;
					}
					
					if (ControlFormFlotante != null)
					{
						ControlFormFlotante.name = "ControlFormFlotanteNombre";
					}
					
					if (bolControlCreado)
					{
						//Propiedades genericas del control
						int intMargen = 20;
						ControlFormFlotante.Left = intMargen;
						ControlFormFlotante.Top = intMargen;
						ControlFormFlotante.Width = FormFlotante.Width - intMargen * 2 - 8;
						ControlFormFlotante.Height = FormFlotante.Height - intMargen * 2 - 25;
						ControlFormFlotante.Anchor = AnchorStyles.Top + AnchorStyles.Left + AnchorStyles.Right + AnchorStyles.Bottom;
						
						//Mostrar form flotante
						FormFlotante.Visible = true;
						if (! FormFlotante.TopMost)
						{
							FormFlotante.TopMost = true;
						}
						//.Show()
						
					}
					
				}
				else
				{
					QuitarTopMost(); //If Not FormFlotante Is Nothing Then FormFlotante.Visible = False '0.Dispose()
				}
			}
			catch (Exception ex)
			{
				//FormFlotante = Nothing
				ControlFormFlotante = null;
				MessageBox.Show(ex.Message);
			}
		}
		
		private void AntesCerrarFormFlotante(System.Object sender, System.Windows.Forms.FormClosingEventArgs e)
		{
			Infragistics.Win.UltraWinToolbars.StateButtonTool Check;
			
			e.Cancel = true;
			FormFlotante.Visible = false;
			Check = (Infragistics.Win.UltraWinToolbars.StateButtonTool) (utmCabecera.Tools["Previsualizar"]);
			Check.Checked = false;
			CrearMostrarPrevisualizacion();
		}
		
		public void frmCambiarColores_Activated(object sender, System.EventArgs e)
		{
			//Crear sino existe
			if (bolPrevisualizar && FormFlotante == null)
			{
				CrearFormFlotante();
			}
			CrearMostrarPrevisualizacion();
		}
		
		public void QuitarTopMost(System.Object sender, System.EventArgs e)
      {
         if (FormFlotante != null)
         {
            FormFlotante.Visible = false;
         }
      }
		#endregion
		//'
		#region Cargar Combos
		
		private void CargarCombosDeTiposGradientStyle()
		{
			Infragistics.Win.GradientStyle TiposGradientStyle;
			DataRow dr;
			int[] RecuperarPosicionConstantes;
			string[] RecuperarNombreConstantes;
			
			try
			{
				if (dTTiposGradientStyle.Columns.Count == 0)
				{
					//Añadir las columnas necesarias
					dTTiposGradientStyle.Columns.Add("IdGradientStyle", typeof(string));
					dTTiposGradientStyle.Columns.Add("DesGradientStyle", typeof(string));
				}
				
				//Recorrer y asignar valores
				RecuperarPosicionConstantes = TiposGradientStyle.GetValues(TiposGradientStyle.GetType());
				RecuperarNombreConstantes = TiposGradientStyle.GetNames(TiposGradientStyle.GetType());
				
				for (int intNPropiedades = 0; intNPropiedades <= RecuperarNombreConstantes.GetUpperBound(0); intNPropiedades++)
				{
					//agregar propiedad al dt
					dr = dTTiposGradientStyle.NewRow();
					dr[0] = RecuperarPosicionConstantes[intNPropiedades];
					dr[1] = RecuperarNombreConstantes[intNPropiedades];
					dTTiposGradientStyle.Rows.Add(dr);
				}
				
				//Carga Combo toolbar
				cmbUltraToolbarsManagerGradientStyle.ValueMember = "IdGradientStyle";
				cmbUltraToolbarsManagerGradientStyle.DisplayMember = "DesGradientStyle";
				cmbUltraToolbarsManagerGradientStyle.DataSource = dTTiposGradientStyle;
				cmbUltraToolbarsManagerGradientStyle.SelectedItem = - 1;
				
				//GRid
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraGridBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraGridGroupByBoxBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraGridGroupByRowAppearanceBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraGridPromptAppearanceBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraGridSelectedRowAppearanceBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraGridHeaderBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraGridGroupByColumnHeaderBackGradientStyle);
				
				//TabMDI
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraTabMDIManagerBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraTabMDIManagerTabBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraTabMDIManagerTabActivaBackGradientStyle);
				
				//Tab
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraTabHeaderAreaBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraTabBackGradientStyle);
				CargarCombosDeTiposGradientStyleAmpliado(cmbUltraTabActivaBackGradientStyle);
			}
			catch (Exception ex)
			{
				MessageBox.Show(ex.Message);
			}
		}
		
		private void CargarCombosDeTiposGradientStyleAmpliado(ComboBox ControlCombo)
		{
			ComboBox with_1 = ControlCombo;
			with_1.ValueMember = "IdGradientStyle";
			with_1.DisplayMember = "DesGradientStyle";
			with_1.DataSource = dTTiposGradientStyle.Copy();
			with_1.SelectedItem = - 1;
			//
			Utiles.UtilControlesNET.ActivarAutocompletarCombo(ControlCombo);
		}
		
		private void CargarCombocmbUltraGridGroupByBoxBorderStyle()
		{
			Infragistics.Win.UIElementBorderStyle TiposBorderStyle;
			DataRow dr;
			int[] RecuperarPosicionConstantes;
			string[] RecuperarNombreConstantes;
			
			try
			{
				if (dTTiposGroupByBoxBorderStyle.Columns.Count == 0)
				{
					//Añadir las columnas necesarias
					dTTiposGroupByBoxBorderStyle.Columns.Add("IdBorderStyle", typeof(string));
					dTTiposGroupByBoxBorderStyle.Columns.Add("DesBorderStyle", typeof(string));
				}
				
				//Recorrer y asignar valores
				RecuperarPosicionConstantes = TiposBorderStyle.GetValues(TiposBorderStyle.GetType());
				RecuperarNombreConstantes = TiposBorderStyle.GetNames(TiposBorderStyle.GetType());
				
				for (int intNPropiedades = 0; intNPropiedades <= RecuperarNombreConstantes.GetUpperBound(0); intNPropiedades++)
				{
					//agregar propiedad al dt
					dr = dTTiposGroupByBoxBorderStyle.NewRow();
					dr[0] = RecuperarPosicionConstantes[intNPropiedades];
					dr[1] = RecuperarNombreConstantes[intNPropiedades];
					dTTiposGroupByBoxBorderStyle.Rows.Add(dr);
				}
				
				//Carga Combo
				cmbUltraGridGroupByBoxBorderStyle.ValueMember = "IdBorderStyle";
				cmbUltraGridGroupByBoxBorderStyle.DisplayMember = "DesBorderStyle";
				cmbUltraGridGroupByBoxBorderStyle.DataSource = dTTiposGroupByBoxBorderStyle;
				cmbUltraGridGroupByBoxBorderStyle.SelectedItem = - 1;
				
				Utiles.UtilControlesNET.ActivarAutocompletarCombo(cmbUltraGridGroupByBoxBorderStyle);
			}
			catch (Exception ex)
			{
				MessageBox.Show(ex.Message);
			}
		}
		
		#endregion
		//'
		#region AplicarEstilos
		
		private void AplicarEstilos()
		{
			//Dim ObjetoActual As Object
			
			try
			{
				if (utcControlesAModificar.ActiveTab.Index == 2 && bolCambioAutomatico)
				{
					clsControlColores.CambiarColoresTabMDIManager(clsVariables.frm_Principal.utmPrincipal);
				}
				
				//Crear previsualización
				CrearMostrarPrevisualizacion();
				
				RecorrerControlesFormsMDI();
				
			}
			catch (Exception ex)
			{
				if (ex.Message != string.Empty)
				{
					MessageBox.Show(ex.Message);
				}
			}
		}
		
		/// <summary>
		/// Recorre los formularios dentro del form principal y a los controles que tiene cada form
		/// comprueba cada control y si es del tipo grid, combo, etc.. le aplica el formato ageinfo
		/// </summary>
		/// <remarks></remarks>
		public void RecorrerControlesFormsMDI()
		{
			//Recorrer controles en formularios MDI
			if (clsVariables.frm_Principal.MdiChildren.Length > 0)
			{
				//Recorrer los MDI del form principal
				foreach (System.Windows.Forms.Form f in clsVariables.frm_Principal.MdiChildren)
				{
					//Verificar si el Formulario tiene controles tab
					foreach (object ctrl in f.Controls)
					{
						RecorrerControles(ctrl);
					}
				}
			}
			
			//Recorrer controles en formularios NO MDI
			foreach (var _Form in System.Windows.Forms.Application.OpenForms)
			{
				object with_1 = _Form;
				if (! with_1.IsMdiChild && with_1.Name != clsVariables.frm_Principal.Name)
				{
					foreach (object ctrl in with_1.Controls)
					{
						RecorrerControles(ctrl);
					}
				}
			}
		}
		
		
		public void RecorrerControles(ref object ctlControl)
		{
			
			//Inicio Chapuza
			//Si es un control de infragistics no se puede recorrer con ControlForm.Controls pq. devuelve 0 ya que es
			//windows.forms.controls. DE momento lo soluciono así...
			//If ControlForm.GetType.FullName = "Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea" Then CambiarColorBarra(ControlForm.toolbarsmanager)
			RecorrerControlesAplicarEstilos(ref ctlControl);
			
			
			//---fin Chapuza
			
			foreach (object Controlw in ctlControl.Controls)
			{
				if (Controlw.HasChildren == true)
				{
					RecorrerControles(Controlw);
				}
				else
				{
					RecorrerControlesAplicarEstilos(Controlw);
				}
			}
		}
		
		/// <summary>
		/// Aplica filtros según control. bolAplicarEstiloDirecto aplica el estilo directamente
		/// pasando del resto de comprobaciones
		/// </summary>
		/// <param name="ctlControl"></param>
		/// <remarks></remarks>
		private void RecorrerControlesAplicarEstilos(ref object ctlControl)
		{
			string NombreCompletoControl = ctlControl.GetType().FullName;
			
			switch (NombreCompletoControl)
			{
				case "Infragistics.Win.UltraWinToolbars.UltraToolbarsManager":
					if (this.bolAplicarEstiloDirecto || utcControlesAModificar.ActiveTab.Index == 0 || bolCambioAutomatico)
					{
						clsControlColores.CambiarColorBarra(ctlControl);
					}
					break;
				case "Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea":
					if (this.bolAplicarEstiloDirecto || utcControlesAModificar.ActiveTab.Index == 0 || bolCambioAutomatico)
					{
						clsControlColores.CambiarColorBarra(ctlControl.toolbarsmanager);
					}
					break;
				case "Infragistics.Win.UltraWinGrid.UltraGrid":
					if (this.bolAplicarEstiloDirecto || utcControlesAModificar.ActiveTab.Index == 1 || bolCambioAutomatico)
					{
						clsControlColores.CagarColoresGrid(ctlControl);
					}
					break;
				case "Infragistics.Win.UltraWinTabControl.UltraTabControl":
					if (this.bolAplicarEstiloDirecto || utcControlesAModificar.ActiveTab.Index == 3 || bolCambioAutomatico)
					{
						clsControlColores.CambiarColoresTab(ctlControl); //ConfigurarTab
					}
					break;
			}
		}
		
		private void AsignarColoresSesionAFormulario()
		{
			//----Asignar los colores (y demás) por defecto
			//ToolBar
			this.ucpUltraToolbarsManagerBackColor.Color = clsVariables.Colores.UltraToolbarsManagerBackColor;
			this.ucpUltraToolbarsManagerBackColor2.Color = clsVariables.Colores.UltraToolbarsManagerBackColor2;
			this.cmbUltraToolbarsManagerGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraToolbarsManagerGradientStyle);
			
			//Grid
			ucpUltraGridBackColor.Color = clsVariables.Colores.UltraGridBackColor;
			cmbUltraGridBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridBackGradientStyle);
			ucpUltraGridBackColor2.Color = clsVariables.Colores.UltraGridBackColor2;
			ucpUltraGridGroupByBoxBackColor.Color = clsVariables.Colores.UltraGridGroupByBoxBackColor;
			ucpUltraGridGroupByBoxBackColor2.Color = clsVariables.Colores.UltraGridGroupByBoxBackColor2;
			ucpUltraGridGroupByBoxPromptBackColor.Color = clsVariables.Colores.UltraGridGroupByBoxPromptBackColor;
			ucpUltraGridGroupByBoxPromptBackColor2.Color = clsVariables.Colores.UltraGridGroupByBoxPromptBackColor2;
			cmbUltraGridPromptAppearanceBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridPromptAppearanceBackGradientStyle);
			ucpUltraGridGroupByBoxPromptForeColor.Color = clsVariables.Colores.UltraGridGroupByBoxPromptForeColor;
			cmbUltraGridGroupByBoxBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridGroupByBoxBackGradientStyle);
			cmbUltraGridGroupByBoxBorderStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridGroupByBoxBorderStyle);
			//GroupByRow
			ucpUltraGridGroupByRowAppearanceBackColor.Color = clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor;
			ucpUltraGridGroupByRowAppearanceBackColor2.Color = clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor2;
			cmbUltraGridGroupByRowAppearanceBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridGroupByRowAppearanceBackGradientStyle);
			//GroupByRow activa
			ucpUltraGridSelectedRowAppearanceBackColor.Color = clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor;
			ucpUltraGridSelectedRowAppearanceBackColor2.Color = clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor2;
			cmbUltraGridSelectedRowAppearanceBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridSelectedRowAppearanceBackGradientStyle);
			
			ucpUltraGridHeaderBackColor.Color = clsVariables.Colores.UltraGridHeaderBackColor;
			ucpUltraGridHeaderBackColor2.Color = clsVariables.Colores.UltraGridHeaderBackColor2;
			cmbUltraGridHeaderBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridHeaderBackGradientStyle);
			ucpUltraGridGroupByColumnHeaderBackColor.Color = clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor;
			ucpUltraGridGroupByColumnHeaderBackColor2.Color = clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor2;
			cmbUltraGridGroupByColumnHeaderBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraGridGroupByColumnHeaderBackGradientStyle);
			ucpUltraGridActiveRowBackColor.Color = clsVariables.Colores.UltraGridActiveRowBackColor;
			ucpUltraGridActiveRowForeColor.Color = clsVariables.Colores.UltraGridActiveRowForeColor;
			ucpUltraGridActiveCellBackColor.Color = clsVariables.Colores.UltraGridActiveCellBackColor;
			ucpUltraGridActiveCellForeColor.Color = clsVariables.Colores.UltraGridActiveCellForeColor;
			
			//TabMDI
			ucpUltraTabMDIManagerBackColor.Color = clsVariables.Colores.UltraTabMDIManagerBackColor;
			ucpUltraTabMDIManagerBackColor2.Color = clsVariables.Colores.UltraTabMDIManagerBackColor2;
			ucpUltraTabMDIManagerBorderColor.Color = clsVariables.Colores.UltraTabMDIManagerBorderColor;
			ucpUltraTabMDIManagerBorderColor2.Color = clsVariables.Colores.UltraTabMDIManagerBorderColor2;
			cmbUltraTabMDIManagerBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraTabMDIManagerBackGradientStyle);
			ucpUltraTabMDIManagerForeColor.Color = clsVariables.Colores.UltraTabMDIManagerForeColor;
			//Tabs No activas
			ucpUltraTabMDIManagerTabBackColor.Color = clsVariables.Colores.UltraTabMDIManagerTabBackColor;
			ucpUltraTabMDIManagerTabBackColor2.Color = clsVariables.Colores.UltraTabMDIManagerTabBackColor2;
			ucpUltraTabMDIManagerTabBorderColor.Color = clsVariables.Colores.UltraTabMDIManagerTabBorderColor;
			ucpUltraTabMDIManagerTabBorderColor2.Color = clsVariables.Colores.UltraTabMDIManagerTabBorderColor2;
			cmbUltraTabMDIManagerTabBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraTabMDIManagerTabBackGradientStyle);
			ucpUltraTabMDIManagerTabForeColor.Color = clsVariables.Colores.UltraTabMDIManagerTabForeColor;
			//Tabs Activas
			ucpUltraTabMDIManagerTabActivaBackColor.Color = clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor;
			ucpUltraTabMDIManagerTabActivaBackColor2.Color = clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor2;
			ucpUltraTabMDIManagerTabActivaBorderColor.Color = clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor;
			ucpUltraTabMDIManagerTabActivaBorderColor2.Color = clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor2;
			cmbUltraTabMDIManagerTabActivaBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraTabMDIManagerTabActivaBackGradientStyle);
			ucpUltraTabMDIManagerTabActivaForeColor.Color = clsVariables.Colores.UltraTabMDIManagerTabActivaForeColor;
			
			//TabControl
			ucpUltraTabHeaderAreaBackColor.Color = clsVariables.Colores.UltraTabHeaderAreaBackColor;
			ucpUltraTabHeaderAreaBackColor2.Color = clsVariables.Colores.UltraTabHeaderAreaBackColor2;
			ucpUltraTabHeaderAreaBorderColor.Color = clsVariables.Colores.UltraTabHeaderAreaBorderColor;
			ucpUltraTabHeaderAreaBorderColor2.Color = clsVariables.Colores.UltraTabHeaderAreaBorderColor2;
			cmbUltraTabHeaderAreaBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraTabHeaderAreaBackGradientStyle);
			ucpUltraTabHeaderAreaForeColor.Color = clsVariables.Colores.UltraTabHeaderAreaForeColor;
			//Tabs No activas
			ucpUltraTabBackColor.Color = clsVariables.Colores.UltraTabBackColor;
			ucpUltraTabBackColor2.Color = clsVariables.Colores.UltraTabBackColor2;
			ucpUltraTabBorderColor.Color = clsVariables.Colores.UltraTabBorderColor;
			ucpUltraTabBorderColor2.Color = clsVariables.Colores.UltraTabBorderColor2;
			cmbUltraTabBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraTabBackGradientStyle);
			ucpUltraTabForeColor.Color = clsVariables.Colores.UltraTabForeColor;
			//Tabs Activas
			ucpUltraTabActivaBackColor.Color = clsVariables.Colores.UltraTabActivaBackColor;
			ucpUltraTabActivaBackColor2.Color = clsVariables.Colores.UltraTabActivaBackColor2;
			ucpUltraTabActivaBorderColor.Color = clsVariables.Colores.UltraTabActivaBorderColor;
			ucpUltraTabActivaBorderColor2.Color = clsVariables.Colores.UltraTabActivaBorderColor2;
			cmbUltraTabActivaBackGradientStyle.SelectedValue = System.Convert.ToInt32(clsVariables.Colores.UltraTabActivaBackGradientStyle);
			ucpUltraTabActivaForeColor.Color = clsVariables.Colores.UltraTabActivaForeColor;
			//----FIN Asignar los colores por defecto
		}
		
		#region AplicarEstilos Grid
		
		//SC: Lo iba a agrupar todo en una pero luego hay que hacer un case para ver cual es el que llama y si se cambia el nombre al control
		//el vs no lo cambiará en el case y hay que reescribirlo de nuevo. De esta manera no hace falta
		//------GRid
		public void ucpUltraGridBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraGridBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridBackGradientStyle = cmbUltraGridBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraGridBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridGroupByBoxBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByBoxBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridGroupByBoxBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByBoxBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridGroupByBoxPromptBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByBoxPromptBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridGroupByBoxPromptBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByBoxPromptBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraGridPromptAppearanceBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridPromptAppearanceBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridPromptAppearanceBackGradientStyle = cmbUltraGridPromptAppearanceBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraGridGroupByBoxPromptForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByBoxPromptForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraGridGroupByBoxBorderStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridGroupByBoxBorderStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridGroupByBoxBorderStyle = cmbUltraGridGroupByBoxBorderStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraGridGroupByRowAppearanceBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridGroupByRowAppearanceBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		//----GroupbyBoxRow Activa
		public void ucpUltraGridSelectedRowAppearanceBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridSelectedRowAppearanceBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraGridSelectedRowAppearanceBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridSelectedRowAppearanceBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridSelectedRowAppearanceBackGradientStyle = cmbUltraGridSelectedRowAppearanceBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		//------------------------
		
		public void ucpUltraGridHeaderBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridHeaderBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridHeaderBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridHeaderBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridGroupByColumnHeaderBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridGroupByColumnHeaderBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridActiveRowBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridActiveRowBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridActiveCellForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridActiveCellForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridActiveCellBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridActiveCellBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraGridActiveRowForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraGridActiveRowForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraGridGroupByRowAppearanceBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridGroupByRowAppearanceBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridGroupByRowAppearanceBackGradientStyle = cmbUltraGridGroupByRowAppearanceBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void cmbUltraGridGroupByBoxBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e) 
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridGroupByBoxBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridGroupByBoxBackGradientStyle = cmbUltraGridGroupByBoxBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void cmbUltraGridHeaderBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridHeaderBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridHeaderBackGradientStyle = cmbUltraGridHeaderBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void cmbUltraGridGroupByColumnHeaderBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraGridGroupByColumnHeaderBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraGridGroupByColumnHeaderBackGradientStyle = cmbUltraGridGroupByColumnHeaderBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		#endregion
		
		#region AplicarEstilos ToolBar
		
		public void ucpUltraToolbarsManagerBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraToolbarsManagerBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraToolbarsManagerBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraToolbarsManagerBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraToolbarsManagerGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraToolbarsManagerGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraToolbarsManagerGradientStyle = cmbUltraToolbarsManagerGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		#endregion
		
		#region AplicarEstilos TabMDI
		
		public void ucpUltraTabMDIManagerBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerBorderColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerBorderColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerBorderColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerBorderColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraTabMDIManagerBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraTabMDIManagerBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraTabMDIManagerBackGradientStyle = cmbUltraTabMDIManagerBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraTabMDIManagerForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabBorderColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabBorderColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabBorderColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabBorderColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraTabMDIManagerTabBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraTabMDIManagerTabBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraTabMDIManagerTabBackGradientStyle = cmbUltraTabMDIManagerTabBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraTabMDIManagerTabForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabActivaBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabActivaBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabActivaBorderColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabMDIManagerTabActivaBorderColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraTabMDIManagerTabActivaBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraTabMDIManagerTabActivaBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraTabMDIManagerTabActivaBackGradientStyle = cmbUltraTabMDIManagerTabActivaBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraTabMDIManagerTabActivaForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabMDIManagerTabActivaForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		#endregion
		
		#region AplicarEstilos UltraTab
		
		public void ucpUltraTabHeaderAreaBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabHeaderAreaBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabHeaderAreaBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabHeaderAreaBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabHeaderAreaBorderColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabHeaderAreaBorderColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabHeaderAreaBorderColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabHeaderAreaBorderColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabHeaderAreaForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabHeaderAreaForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraTabHeaderAreaBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraTabHeaderAreaBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraTabHeaderAreaBackGradientStyle = cmbUltraTabHeaderAreaBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraTabBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabBorderColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabBorderColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabBorderColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabBorderColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraTabBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraTabBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraTabBackGradientStyle = cmbUltraTabBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		
		public void ucpUltraTabActivaBackColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabActivaBackColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabActivaBackColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabActivaBackColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabActivaBorderColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabActivaBorderColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabActivaBorderColor2_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabActivaBorderColor2 = sender.color;
			}
			AplicarEstilos();
		}
		
		public void ucpUltraTabActivaForeColor_ColorChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico)
			{
				clsVariables.Colores.UltraTabActivaForeColor = sender.color;
			}
			AplicarEstilos();
		}
		
		public void cmbUltraTabActivaBackGradientStyle_SelectedIndexChanged(System.Object sender, System.EventArgs e)
		{
			if (bolCargadoForm && bolCambioAutomatico && cmbUltraTabActivaBackGradientStyle.SelectedIndex != - 1)
			{
				clsVariables.Colores.UltraTabActivaBackGradientStyle = cmbUltraTabActivaBackGradientStyle.SelectedValue;
				AplicarEstilos();
			}
		}
		#endregion
		
		#endregion
		//'
		#region Barra y acciones
		
		public void utmCabecera_ToolClick(System.Object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
		{
			Infragistics.Win.UltraWinToolbars.StateButtonTool bolCambioAutomaticoToolBar;
			Infragistics.Win.UltraWinToolbars.StateButtonTool bolPrevisualizarToolBar;
			
			bolCambioAutomaticoToolBar = (Infragistics.Win.UltraWinToolbars.StateButtonTool) (utmCabecera.Tools["CambioAutomatico"]);
			bolPrevisualizarToolBar = (Infragistics.Win.UltraWinToolbars.StateButtonTool) (utmCabecera.Tools["Previsualizar"]);
			
			try
			{
				System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
				//Opciones del Menú
				switch (e.Tool.Key)
				{
					case "Procesar":
						
						Procesar();
						break;
					case "Guardar":
						
						Guardar();
						break;
					case "Abrir":
						
						Abrir();
						break;
					case "CambioAutomatico":
						if (bolCambioAutomaticoToolBar.Checked == true)
						{
							bolCambioAutomatico = true;
						}
						else
						{
							bolCambioAutomatico = false;
						}
						break;
					case "Previsualizar":
						if (bolPrevisualizarToolBar.Checked == true)
						{
							bolPrevisualizar = true;
						}
						else
						{
							bolPrevisualizar = false;
						}
						CrearMostrarPrevisualizacion();
						break;
				}
			}
			catch (Exception ex)
			{
				if (ex.Message != string.Empty)
				{
					MessageBox.Show(ex.Message);
				}
			}
			finally
			{
				System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default;
			}
		}
		
		private void Procesar()
		{
			//----Asignar los colores (y demás) por defecto
			//ToolBar
			//If UltraToolbarsManagerBackColor <> Me.ucpUltraToolbarsManagerBackColor.Color Then
			clsVariables.Colores.UltraToolbarsManagerBackColor = this.ucpUltraToolbarsManagerBackColor.Color;
			//End If
			clsVariables.Colores.UltraToolbarsManagerBackColor2 = this.ucpUltraToolbarsManagerBackColor2.Color;
			clsVariables.Colores.UltraToolbarsManagerGradientStyle = this.cmbUltraToolbarsManagerGradientStyle.SelectedValue;
			
			
			//Grid
			clsVariables.Colores.UltraGridBackColor = ucpUltraGridBackColor.Color;
			clsVariables.Colores.UltraGridBackGradientStyle = cmbUltraGridBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraGridBackColor2 = ucpUltraGridBackColor2.Color;
			//---
			clsVariables.Colores.UltraGridGroupByBoxBackColor = ucpUltraGridGroupByBoxBackColor.Color;
			clsVariables.Colores.UltraGridGroupByBoxBackColor2 = ucpUltraGridGroupByBoxBackColor2.Color;
			clsVariables.Colores.UltraGridGroupByBoxBackGradientStyle = cmbUltraGridGroupByBoxBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraGridGroupByBoxBorderStyle = cmbUltraGridGroupByBoxBorderStyle.SelectedValue;
			//---
			clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor = ucpUltraGridGroupByRowAppearanceBackColor.Color;
			clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor2 = ucpUltraGridGroupByRowAppearanceBackColor2.Color;
			clsVariables.Colores.UltraGridGroupByRowAppearanceBackGradientStyle = cmbUltraGridGroupByRowAppearanceBackGradientStyle.SelectedValue;
			//---
			clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor = ucpUltraGridSelectedRowAppearanceBackColor.Color;
			clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor2 = ucpUltraGridSelectedRowAppearanceBackColor2.Color;
			clsVariables.Colores.UltraGridSelectedRowAppearanceBackGradientStyle = cmbUltraGridSelectedRowAppearanceBackGradientStyle.SelectedValue;
			//---
			clsVariables.Colores.UltraGridGroupByBoxPromptBackColor = ucpUltraGridGroupByBoxPromptBackColor.Color;
			clsVariables.Colores.UltraGridGroupByBoxPromptBackColor2 = ucpUltraGridGroupByBoxPromptBackColor2.Color;
			clsVariables.Colores.UltraGridPromptAppearanceBackGradientStyle = cmbUltraGridPromptAppearanceBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraGridGroupByBoxPromptForeColor = ucpUltraGridGroupByBoxPromptForeColor.Color;
			//---
			clsVariables.Colores.UltraGridHeaderBackColor = ucpUltraGridHeaderBackColor.Color;
			clsVariables.Colores.UltraGridHeaderBackColor2 = ucpUltraGridHeaderBackColor2.Color;
			clsVariables.Colores.UltraGridHeaderBackGradientStyle = cmbUltraGridHeaderBackGradientStyle.SelectedValue;
			//---
			clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor = ucpUltraGridGroupByColumnHeaderBackColor.Color;
			clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor2 = ucpUltraGridGroupByColumnHeaderBackColor2.Color;
			clsVariables.Colores.UltraGridGroupByColumnHeaderBackGradientStyle = cmbUltraGridGroupByColumnHeaderBackGradientStyle.SelectedValue;
			//---
			clsVariables.Colores.UltraGridActiveRowBackColor = ucpUltraGridActiveRowBackColor.Color;
			clsVariables.Colores.UltraGridActiveRowForeColor = ucpUltraGridActiveRowForeColor.Color;
			clsVariables.Colores.UltraGridActiveCellBackColor = ucpUltraGridActiveCellBackColor.Color;
			clsVariables.Colores.UltraGridActiveCellForeColor = ucpUltraGridActiveCellForeColor.Color;
			
			
			//TabMDI
			clsVariables.Colores.UltraTabMDIManagerBackColor = ucpUltraTabMDIManagerBackColor.Color;
			clsVariables.Colores.UltraTabMDIManagerBackColor2 = ucpUltraTabMDIManagerBackColor2.Color;
			clsVariables.Colores.UltraTabMDIManagerBorderColor = ucpUltraTabMDIManagerBorderColor.Color;
			clsVariables.Colores.UltraTabMDIManagerBorderColor2 = ucpUltraTabMDIManagerBorderColor2.Color;
			clsVariables.Colores.UltraTabMDIManagerBackGradientStyle = cmbUltraTabMDIManagerBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraTabMDIManagerForeColor = ucpUltraTabMDIManagerForeColor.Color;
			//Tabs No activas
			clsVariables.Colores.UltraTabMDIManagerTabBackColor = ucpUltraTabMDIManagerTabBackColor.Color;
			clsVariables.Colores.UltraTabMDIManagerTabBackColor2 = ucpUltraTabMDIManagerTabBackColor2.Color;
			clsVariables.Colores.UltraTabMDIManagerTabBorderColor = ucpUltraTabMDIManagerTabBorderColor.Color;
			clsVariables.Colores.UltraTabMDIManagerTabBorderColor2 = ucpUltraTabMDIManagerTabBorderColor2.Color;
			clsVariables.Colores.UltraTabMDIManagerTabBackGradientStyle = cmbUltraTabMDIManagerTabBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraTabMDIManagerTabForeColor = ucpUltraTabMDIManagerTabForeColor.Color;
			//Tabs Activas
			clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor = ucpUltraTabMDIManagerTabActivaBackColor.Color;
			clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor2 = ucpUltraTabMDIManagerTabActivaBackColor2.Color;
			clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor = ucpUltraTabMDIManagerTabActivaBorderColor.Color;
			clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor2 = ucpUltraTabMDIManagerTabActivaBorderColor2.Color;
			clsVariables.Colores.UltraTabMDIManagerTabActivaBackGradientStyle = cmbUltraTabMDIManagerTabActivaBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraTabMDIManagerTabActivaForeColor = ucpUltraTabMDIManagerTabActivaForeColor.Color;
			
			//Tab
			clsVariables.Colores.UltraTabHeaderAreaBackColor = ucpUltraTabHeaderAreaBackColor.Color;
			clsVariables.Colores.UltraTabHeaderAreaBackColor2 = ucpUltraTabHeaderAreaBackColor2.Color;
			clsVariables.Colores.UltraTabHeaderAreaBorderColor = ucpUltraTabHeaderAreaBorderColor.Color;
			clsVariables.Colores.UltraTabHeaderAreaBorderColor2 = ucpUltraTabHeaderAreaBorderColor2.Color;
			clsVariables.Colores.UltraTabHeaderAreaBackGradientStyle = cmbUltraTabHeaderAreaBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraTabHeaderAreaForeColor = ucpUltraTabHeaderAreaForeColor.Color;
			//Tabs No activas
			clsVariables.Colores.UltraTabBackColor = ucpUltraTabBackColor.Color;
			clsVariables.Colores.UltraTabBackColor2 = ucpUltraTabBackColor2.Color;
			clsVariables.Colores.UltraTabBorderColor = ucpUltraTabBorderColor.Color;
			clsVariables.Colores.UltraTabBorderColor2 = ucpUltraTabBorderColor2.Color;
			clsVariables.Colores.UltraTabBackGradientStyle = cmbUltraTabBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraTabForeColor = ucpUltraTabForeColor.Color;
			//Tabs Activas
			clsVariables.Colores.UltraTabActivaBackColor = ucpUltraTabActivaBackColor.Color;
			clsVariables.Colores.UltraTabActivaBackColor2 = ucpUltraTabActivaBackColor2.Color;
			clsVariables.Colores.UltraTabActivaBorderColor = ucpUltraTabActivaBorderColor.Color;
			clsVariables.Colores.UltraTabActivaBorderColor2 = ucpUltraTabActivaBorderColor2.Color;
			clsVariables.Colores.UltraTabActivaBackGradientStyle = cmbUltraTabActivaBackGradientStyle.SelectedValue;
			clsVariables.Colores.UltraTabActivaForeColor = ucpUltraTabActivaForeColor.Color;
			//----FIN Asignar los colores por defecto
			
			AplicarEstilos();
		}
		
		#region  Tratamiento ficheros Estilos
		
		
		
		/// <summary>
		/// Guardar la configuración actual de colores en un fichero XML
		/// </summary>
		/// <remarks></remarks>
		private void Guardar()
		{
			//Guardar fichero
			SaveFileDialog SPDFichero = new SaveFileDialog();
			string FicheroXML = string.Empty;
			DialogResult File;
			
			using (SPDFichero)
			{
				SPDFichero.Filter = "Archivos XML (*.xml)|*.xml";
				//Dim aName As String = _
				//System.Reflection.Assembly.GetExecutingAssembly.GetModules()(0).FullyQualifiedName
				//.InitialDirectory = System.Reflection.Assembly.GetExecutingAssembly.Location & "\Templates"
				SPDFichero.InitialDirectory = System.IO.Directory.GetCurrentDirectory() + "\\Templates";
				File = SPDFichero.ShowDialog();
				if (File == System.Windows.Forms.DialogResult.OK)
				{
					FicheroXML = SPDFichero.FileName;
				}
			}
			
			
			//Abrir el fichero
			if (FicheroXML == string.Empty)
			{
				
				throw (new Exception(string.Empty));
			}
			else
			{
				
				CrearXml(FicheroXML);
			}
		}
		
		/// <summary>
		/// Crear un XML con la config de colores actual
		/// </summary>
		/// <param name="RutaYNombreXml"></param>
		/// <remarks></remarks>
		private void CrearXml(string RutaYNombreXml)
		{
			XmlTextWriter NuevoXml = new XmlTextWriter(RutaYNombreXml, null);
			
			//Sangría automática
			NuevoXml.Formatting = Formatting.Indented;
			//Elemento raiz
			NuevoXml.WriteStartElement("ConfiguracionColores");
			
			//--------------Empezar elemento Barra
			//Escribo espacios entre los nodos
			NuevoXml.WriteStartElement("Barra");
			NuevoXml.WriteElementString("UltraToolbarsManagerBackColor", clsVariables.Colores.UltraToolbarsManagerBackColor.Name);
			NuevoXml.WriteElementString("UltraToolbarsManagerBackColor2", clsVariables.Colores.UltraToolbarsManagerBackColor2.Name);
			NuevoXml.WriteElementString("UltraToolbarsManagerGradientStyle", clsVariables.Colores.UltraToolbarsManagerGradientStyle);
			NuevoXml.WriteEndElement();
			// '--------------Final elemento Barra
			
			
			//--------------Empezar elemento Grid
			NuevoXml.WriteWhitespace(Constants.vbLf);
			NuevoXml.WriteStartElement("Grid");
			//añadir atributo
			//.WriteAttributeString("rating", "R")
			
			NuevoXml.WriteStartElement("Fondo");
			//Añadir Subelementos
			NuevoXml.WriteElementString("UltraGridBackColor", clsVariables.Colores.UltraGridBackColor.Name);
			NuevoXml.WriteElementString("UltraGridBackColor2", clsVariables.Colores.UltraGridBackColor2.Name);
			NuevoXml.WriteElementString("UltraGridBackGradientStyle", clsVariables.Colores.UltraGridBackGradientStyle);
			//Final Elemento
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteStartElement("GroupByBox");
			NuevoXml.WriteElementString("UltraGridGroupByBoxBackColor", clsVariables.Colores.UltraGridGroupByBoxBackColor.Name);
			NuevoXml.WriteElementString("UltraGridGroupByBoxBackColor2", clsVariables.Colores.UltraGridGroupByBoxBackColor2.Name);
			NuevoXml.WriteElementString("UltraGridGroupByBoxBorderStyle", clsVariables.Colores.UltraGridGroupByBoxBorderStyle);
			NuevoXml.WriteElementString("UltraGridGroupByRowAppearanceBackColor", clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor.Name);
			NuevoXml.WriteElementString("UltraGridGroupByRowAppearanceBackColor2", clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor2.Name);
			NuevoXml.WriteElementString("UltraGridGroupByRowAppearanceBackGradientStyle", clsVariables.Colores.UltraGridGroupByRowAppearanceBackGradientStyle);
			NuevoXml.WriteElementString("UltraGridSelectedRowAppearanceBackColor", clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor.Name);
			NuevoXml.WriteElementString("UltraGridSelectedRowAppearanceBackColor2", clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor2.Name);
			NuevoXml.WriteElementString("UltraGridSelectedRowAppearanceBackGradientStyle", clsVariables.Colores.UltraGridSelectedRowAppearanceBackGradientStyle);
			NuevoXml.WriteElementString("UltraGridGroupByBoxPromptBackColor", clsVariables.Colores.UltraGridGroupByBoxPromptBackColor.Name);
			NuevoXml.WriteElementString("UltraGridGroupByBoxPromptBackColor2", clsVariables.Colores.UltraGridGroupByBoxPromptBackColor2.Name);
			NuevoXml.WriteElementString("UltraGridPromptAppearanceBackGradientStyle", clsVariables.Colores.UltraGridPromptAppearanceBackGradientStyle);
			NuevoXml.WriteElementString("UltraGridGroupByBoxPromptForeColor", clsVariables.Colores.UltraGridGroupByBoxPromptForeColor.Name);
			NuevoXml.WriteElementString("UltraGridGroupByBoxBackGradientStyle", clsVariables.Colores.UltraGridGroupByBoxBackGradientStyle);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteStartElement("CabeceraGrid");
			NuevoXml.WriteElementString("UltraGridHeaderBackColor", clsVariables.Colores.UltraGridHeaderBackColor.Name);
			NuevoXml.WriteElementString("UltraGridHeaderBackColor2", clsVariables.Colores.UltraGridHeaderBackColor2.Name);
			NuevoXml.WriteElementString("UltraGridHeaderBackGradientStyle", clsVariables.Colores.UltraGridHeaderBackGradientStyle);
			NuevoXml.WriteElementString("UltraGridGroupByColumnHeaderBackColor", clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor.Name);
			NuevoXml.WriteElementString("UltraGridGroupByColumnHeaderBackColor2", clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor2.Name);
			NuevoXml.WriteElementString("UltraGridGroupByColumnHeaderBackGradientStyle", clsVariables.Colores.UltraGridGroupByColumnHeaderBackGradientStyle);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteStartElement("RowyCeldaActiva");
			NuevoXml.WriteElementString("UltraGridActiveRowBackColor", clsVariables.Colores.UltraGridActiveRowBackColor.Name);
			NuevoXml.WriteElementString("UltraGridActiveRowForeColor", clsVariables.Colores.UltraGridActiveRowForeColor.Name);
			NuevoXml.WriteElementString("UltraGridActiveCellBackColor", clsVariables.Colores.UltraGridActiveCellBackColor.Name);
			NuevoXml.WriteElementString("UltraGridActiveCellForeColor", clsVariables.Colores.UltraGridActiveCellForeColor.Name);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteEndElement();
			// '--------------Final elemento Grid
			
			
			//--------------Empezar elemento TabbedMDIManager
			NuevoXml.WriteWhitespace(Constants.vbLf);
			NuevoXml.WriteStartElement("TabbedMDIManager");
			
			NuevoXml.WriteStartElement("Appearance");
			NuevoXml.WriteElementString("UltraTabMDIManagerBackColor", clsVariables.Colores.UltraTabMDIManagerBackColor.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerBackColor2", clsVariables.Colores.UltraTabMDIManagerBackColor2.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerBorderColor", clsVariables.Colores.UltraTabMDIManagerBorderColor.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerBorderColor2", clsVariables.Colores.UltraTabMDIManagerBorderColor2.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerBackGradientStyle", clsVariables.Colores.UltraTabMDIManagerBackGradientStyle);
			NuevoXml.WriteElementString("UltraTabMDIManagerForeColor", clsVariables.Colores.UltraTabMDIManagerForeColor.Name);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteStartElement("TabsNoActivas");
			NuevoXml.WriteElementString("UltraTabMDIManagerTabBackColor", clsVariables.Colores.UltraTabMDIManagerTabBackColor.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabBackColor2", clsVariables.Colores.UltraTabMDIManagerTabBackColor2.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabBorderColor", clsVariables.Colores.UltraTabMDIManagerTabBorderColor.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabBorderColor2", clsVariables.Colores.UltraTabMDIManagerTabBorderColor2.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabBackGradientStyle", clsVariables.Colores.UltraTabMDIManagerTabBackGradientStyle);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabForeColor", clsVariables.Colores.UltraTabMDIManagerTabForeColor.Name);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteStartElement("TabsActivas");
			NuevoXml.WriteElementString("UltraTabMDIManagerTabActivaBackColor", clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabActivaBackColor2", clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor2.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabActivaBorderColor", clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabActivaBorderColor2", clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor2.Name);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabActivaBackGradientStyle", clsVariables.Colores.UltraTabMDIManagerTabActivaBackGradientStyle);
			NuevoXml.WriteElementString("UltraTabMDIManagerTabActivaForeColor", clsVariables.Colores.UltraTabMDIManagerTabActivaForeColor.Name);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteEndElement();
			
			//--------------Empezar elemento Tab
			NuevoXml.WriteWhitespace(Constants.vbLf);
			NuevoXml.WriteStartElement("Tab");
			
			NuevoXml.WriteStartElement("UltraTabHeader");
			NuevoXml.WriteElementString("UltraTabHeaderAreaBackColor", clsVariables.Colores.UltraTabHeaderAreaBackColor.Name);
			NuevoXml.WriteElementString("UltraTabHeaderAreaBackColor2", clsVariables.Colores.UltraTabHeaderAreaBackColor2.Name);
			NuevoXml.WriteElementString("UltraTabHeaderAreaBorderColor", clsVariables.Colores.UltraTabHeaderAreaBorderColor.Name);
			NuevoXml.WriteElementString("UltraTabHeaderAreaBorderColor2", clsVariables.Colores.UltraTabHeaderAreaBorderColor2.Name);
			NuevoXml.WriteElementString("UltraTabHeaderAreaBackGradientStyle", clsVariables.Colores.UltraTabHeaderAreaBackGradientStyle);
			NuevoXml.WriteElementString("UltraTabHeaderAreaForeColor", clsVariables.Colores.UltraTabHeaderAreaForeColor.Name);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteStartElement("TabsNoActivas");
			NuevoXml.WriteElementString("UltraTabBackColor", clsVariables.Colores.UltraTabBackColor.Name);
			NuevoXml.WriteElementString("UltraTabBackColor2", clsVariables.Colores.UltraTabBackColor2.Name);
			NuevoXml.WriteElementString("UltraTabBorderColor", clsVariables.Colores.UltraTabBorderColor.Name);
			NuevoXml.WriteElementString("UltraTabBorderColor2", clsVariables.Colores.UltraTabBorderColor2.Name);
			NuevoXml.WriteElementString("UltraTabBackGradientStyle", clsVariables.Colores.UltraTabBackGradientStyle);
			NuevoXml.WriteElementString("UltraTabForeColor", clsVariables.Colores.UltraTabForeColor.Name);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteStartElement("TabsActivas");
			NuevoXml.WriteElementString("UltraTabActivaBackColor", clsVariables.Colores.UltraTabActivaBackColor.Name);
			NuevoXml.WriteElementString("UltraTabActivaBackColor2", clsVariables.Colores.UltraTabActivaBackColor2.Name);
			NuevoXml.WriteElementString("UltraTabActivaBorderColor", clsVariables.Colores.UltraTabActivaBorderColor.Name);
			NuevoXml.WriteElementString("UltraTabActivaBorderColor2", clsVariables.Colores.UltraTabActivaBorderColor2.Name);
			NuevoXml.WriteElementString("UltraTabActivaBackGradientStyle", clsVariables.Colores.UltraTabActivaBackGradientStyle);
			NuevoXml.WriteElementString("UltraTabActivaForeColor", clsVariables.Colores.UltraTabActivaForeColor.Name);
			NuevoXml.WriteEndElement();
			
			NuevoXml.WriteEndElement();
			// '--------------Final elemento TabbedMDIManager
			
			//Write a second element using raw string data
			//.WriteRaw("<item>" & "<title>BloodWake</title>" & "<format>XBox</format>" & "</item>")
			
			//Write a third element with formatting in the string
			//.WriteRaw(vbLf & " <item>" & vbLf & " <title>Unreal Tournament 2003</title>" & vbLf & " <format>CD</format>" & vbLf & " </item>" & vbLf)
			
			//Final del elemento root
			NuevoXml.WriteFullEndElement();
			//Escriba el código XML en el archivo y cerrar el writter
			NuevoXml.Close();
			
			MessageBox.Show("Finalizada la creación del template en: " + RutaYNombreXml);
		}
		
		/// <summary>
		/// Recuperar la configuración actual de colores de un fichero XML
		/// </summary>
		/// <remarks></remarks>
		private void Abrir()
		{
			System.Xml.XmlDocument xDoc;
			
			try
			{
				//Escojer fichero
				OpenFileDialog OPDFichero = new OpenFileDialog();
				string FicheroXML = string.Empty;
				DialogResult File;
				
				using (OPDFichero)
				{
					OPDFichero.Filter = "Archivos XML (*.xml)|*.xml";
					File = OPDFichero.ShowDialog();
					if (File == System.Windows.Forms.DialogResult.OK)
					{
						FicheroXML = OPDFichero.FileName;
					}
				}
				
				
				//Abrir el fichero
				if (FicheroXML == string.Empty)
				{
					throw (new Exception(string.Empty));
				}
				xDoc = new System.Xml.XmlDocument();
				xDoc.Load(FicheroXML);
				string NodoActual = string.Empty;
				//----Asignar los colores (y demás) por defecto
				//ToolBar
				NodoActual = "/ConfiguracionColores/Barra/";
				clsVariables.Colores.UltraToolbarsManagerBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraToolbarsManagerBackColor").InnerText);
				clsVariables.Colores.UltraToolbarsManagerBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraToolbarsManagerBackColor2").InnerText);
				clsVariables.Colores.UltraToolbarsManagerGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraToolbarsManagerGradientStyle").InnerText);
				
				
				//Grid
				NodoActual = "/ConfiguracionColores/Grid/Fondo/";
				clsVariables.Colores.UltraGridBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridBackColor").InnerText);
				clsVariables.Colores.UltraGridBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridBackColor2").InnerText);
				clsVariables.Colores.UltraGridBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridBackGradientStyle").InnerText);
				NodoActual = "/ConfiguracionColores/Grid/GroupByBox/";
				clsVariables.Colores.UltraGridGroupByBoxBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByBoxBackColor").InnerText);
				clsVariables.Colores.UltraGridGroupByBoxBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByBoxBackColor2").InnerText);
				clsVariables.Colores.UltraGridGroupByBoxBorderStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByBoxBorderStyle").InnerText);
				clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByRowAppearanceBackColor").InnerText);
				clsVariables.Colores.UltraGridGroupByRowAppearanceBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByRowAppearanceBackColor2").InnerText);
				clsVariables.Colores.UltraGridGroupByRowAppearanceBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByRowAppearanceBackGradientStyle").InnerText);
				clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridSelectedRowAppearanceBackColor").InnerText);
				clsVariables.Colores.UltraGridSelectedRowAppearanceBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridSelectedRowAppearanceBackColor2").InnerText);
				clsVariables.Colores.UltraGridSelectedRowAppearanceBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridSelectedRowAppearanceBackGradientStyle").InnerText);
				clsVariables.Colores.UltraGridGroupByBoxBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByBoxBackGradientStyle").InnerText);
				clsVariables.Colores.UltraGridGroupByBoxPromptBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByBoxPromptBackColor").InnerText);
				clsVariables.Colores.UltraGridGroupByBoxPromptBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByBoxPromptBackColor2").InnerText);
				clsVariables.Colores.UltraGridPromptAppearanceBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridPromptAppearanceBackGradientStyle").InnerText);
				clsVariables.Colores.UltraGridGroupByBoxPromptForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByBoxPromptForeColor").InnerText);
				NodoActual = "/ConfiguracionColores/Grid/CabeceraGrid/";
				clsVariables.Colores.UltraGridHeaderBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridHeaderBackColor").InnerText);
				clsVariables.Colores.UltraGridHeaderBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridHeaderBackColor2").InnerText);
				clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByColumnHeaderBackColor").InnerText);
				clsVariables.Colores.UltraGridGroupByColumnHeaderBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByColumnHeaderBackColor2").InnerText);
				clsVariables.Colores.UltraGridHeaderBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridHeaderBackGradientStyle").InnerText);
				clsVariables.Colores.UltraGridGroupByColumnHeaderBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridGroupByColumnHeaderBackGradientStyle").InnerText);
				NodoActual = "/ConfiguracionColores/Grid/RowyCeldaActiva/";
				clsVariables.Colores.UltraGridActiveRowBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridActiveRowBackColor").InnerText);
				clsVariables.Colores.UltraGridActiveRowForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridActiveRowForeColor").InnerText);
				clsVariables.Colores.UltraGridActiveCellBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridActiveCellBackColor").InnerText);
				clsVariables.Colores.UltraGridActiveCellForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraGridActiveCellForeColor").InnerText);
				
				//TabMDI
				NodoActual = "/ConfiguracionColores/TabbedMDIManager/Appearance/";
				clsVariables.Colores.UltraTabMDIManagerBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerBackColor").InnerText);
				clsVariables.Colores.UltraTabMDIManagerBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerBackColor2").InnerText);
				clsVariables.Colores.UltraTabMDIManagerBorderColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerBorderColor").InnerText);
				clsVariables.Colores.UltraTabMDIManagerBorderColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerBorderColor2").InnerText);
				clsVariables.Colores.UltraTabMDIManagerBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerBackGradientStyle").InnerText);
				clsVariables.Colores.UltraTabMDIManagerForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerForeColor").InnerText);
				//Tabs No activas
				NodoActual = "/ConfiguracionColores/TabbedMDIManager/TabsNoActivas/";
				clsVariables.Colores.UltraTabMDIManagerTabBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabBackColor").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabBackColor2").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabBorderColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabBorderColor").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabBorderColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabBorderColor2").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabBackGradientStyle").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabForeColor").InnerText);
				//Tabs Activas
				NodoActual = "/ConfiguracionColores/TabbedMDIManager/TabsActivas/";
				clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabActivaBackColor").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabActivaBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabActivaBackColor2").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabActivaBorderColor").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabActivaBorderColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabActivaBorderColor2").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabActivaBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabActivaBackGradientStyle").InnerText);
				clsVariables.Colores.UltraTabMDIManagerTabActivaForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabMDIManagerTabActivaForeColor").InnerText);
				
				
				//Tab
				NodoActual = "/ConfiguracionColores/Tab/UltraTabHeader/";
				clsVariables.Colores.UltraTabHeaderAreaBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabHeaderAreaBackColor").InnerText);
				clsVariables.Colores.UltraTabHeaderAreaBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabHeaderAreaBackColor2").InnerText);
				clsVariables.Colores.UltraTabHeaderAreaBorderColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabHeaderAreaBorderColor").InnerText);
				clsVariables.Colores.UltraTabHeaderAreaBorderColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabHeaderAreaBorderColor2").InnerText);
				clsVariables.Colores.UltraTabHeaderAreaBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabHeaderAreaBackGradientStyle").InnerText);
				clsVariables.Colores.UltraTabHeaderAreaForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabHeaderAreaForeColor").InnerText);
				//Tabs No activas
				NodoActual = "/ConfiguracionColores/Tab/TabsNoActivas/";
				clsVariables.Colores.UltraTabBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabBackColor").InnerText);
				clsVariables.Colores.UltraTabBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabBackColor2").InnerText);
				clsVariables.Colores.UltraTabBorderColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabBorderColor").InnerText);
				clsVariables.Colores.UltraTabBorderColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabBorderColor2").InnerText);
				clsVariables.Colores.UltraTabBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabBackGradientStyle").InnerText);
				clsVariables.Colores.UltraTabForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabForeColor").InnerText);
				//Tabs Activas
				NodoActual = "/ConfiguracionColores/Tab/TabsActivas/";
				clsVariables.Colores.UltraTabActivaBackColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabActivaBackColor").InnerText);
				clsVariables.Colores.UltraTabActivaBackColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabActivaBackColor2").InnerText);
				clsVariables.Colores.UltraTabActivaBorderColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabActivaBorderColor").InnerText);
				clsVariables.Colores.UltraTabActivaBorderColor2 = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabActivaBorderColor2").InnerText);
				clsVariables.Colores.UltraTabActivaBackGradientStyle = int.Parse(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabActivaBackGradientStyle").InnerText);
				clsVariables.Colores.UltraTabActivaForeColor = clsControlColores.DeStringAColor(xDoc.DocumentElement.SelectSingleNode(NodoActual + "UltraTabActivaForeColor").InnerText);
				//----FIN Asignar los colores por defecto
				
				AsignarColoresSesionAFormulario();
				AplicarEstilos();
				
				MessageBox.Show("Archivo de configuración de colores y configuración cargado");
			}
			catch (Exception ex)
			{
				if (ex.Message != string.Empty)
				{
					MessageBox.Show(ex.Message);
				}
			}
		}
		
		#endregion
		
		#endregion
		//'
	}
